Mathematischer Ansatz und theoretischer Rahmen

Das Verkehrsnetz wird durch einen gerichteten Graphen repräsentiert G = (N, A), wobei N die Menge aller Knoten ist und A ⊆ NxN die Menge aller Kanten. Die Graph-Knoten repräsentieren Bezirksschwerpunkte und Straßenkreuzungen ( Visum-Netzknoten), die Kanten Strecken und Anbindungen. Werden Abbieger mit Widerstand oder Einschränkungen ins Netzmodell eingefügt, wird der Knoten aufgelöst, damit solche Abbieger bestimmten oder keinen Kanten des Graphen zugeordnet werden.

Folgende Notation wird verwendet:

fij

Gesamtbelastung auf Kante ijA, Element des (|A|x1) Vektors f

cij

Kosten der Kante ijA, Element des (|A|x1) Vektors c

cij(fij)

Kostenfunktion der Kante ijA

Z ⊆ N

Menge der Bezirksschwerpunkte

Dod

Nachfrage zwischen Quelle oZ und Ziel dZ, Element des (|Z|2x1) Vektors D, d.h. der zeilenweise angeordneten Nachfragematrix

Kid

Menge der azyklischen Wege zwischen Knoten iN und Ziel dZ

K

K = oZdZKod ist die Menge der Wege, die dem Verkehrsteilnehmer zur Verfügung stehen

δijk

δijk = 1, wenn Kante ijA zu Weg k gehört, und 0, andernfalls – für kK, ist dies ein Element der (|A|x|K|) Matrix ∆

λodk

λodk ist 1, wenn Weg kK die Quelle oZ mit dem Ziel dZ (d.h. kKod) verbindet, und andernfalls 0, Element der (|Z|2x|K|) Matrix Λ

Fk

Belastung auf Weg kK, Element des (|K|x1) Vektors F

Ck

Kosten des Weges k – für kK ist dies Element des (|K|x1) Vektors C

Wid

minimale Kosten zur Erreichung des Ziels dZ von Knoten iN

Menge der reellen Zahlen

|S|

Kardinalität der generischen Menge S

Es gibt zwei fundamentale Beziehungen zwischen Belastungsvariablen. Die Belastung auf Kante ijA ist die Summe der Belastungen auf den Wegen, die die Kante überfahren:

fij = ∑kKδijkFk

Die Verkehrsnachfrage zwischen der Quelle oZ und dem Ziel dZ muss übereinstimmen mit der Summe der Belastungen auf den Wegen, die diese verbinden:

kKodFk = Dod

Außerdem müssen alle Wegbelastungen die Nicht-Negativitäts-Bedingungen erfüllen.

Wie gewöhnlich werden additive Wegekosten vorausgesetzt, d.h. der Widerstand Ck, den Nutzer einem gegebenen Weg k zuordnen, ist die Summe der Kosten auf den Kanten, die zu ihm gehören:

Ck = ∑ijAδijkcij [6]

Definitionsgemäß sind die minimalen Kosten zum Erreichen von Ziel dZ von Knoten iN die Kosten jedes Kurzwegs, der sie verbindet:

Wid = min{Ck : kKid} [7]

In diesem Fall kann das Umlegungsproblem durch folgendes Programm formalisiert werden:

[8]

wobei

Θ

{f∈ℜ|A|: f = ∆•F, F∈Ω} die Menge der zulässigen Kantenbelastungen

Ω

{F∈ℜ|K|: F≥ 0, Λ • F = D} die Menge der zulässigen Wegbelastungen

QUm die Existenz und Eindeutigkeit der Lösung von Problem [8] sicherzustellen, gehen wir davon aus, dass:

cij(fij) nicht-negativ, kontinuierlich, streng monoton steigend ist;

Kod nicht-leer ist;

Dod nicht-negativ ist.

Das konvexe Problem [8] kann in Bezug auf Wegbelastungen auch wie folgt ausgedrückt werden:

[9]

wobei die Konvexität des mathematischen Programms bewahrt wird, obwohl die Lösungseindeutigkeit nicht länger gewährleistet ist, was bedeutet, dass jeder absteigende Algorithmus innerhalb von Wegbelastungen eine globale Lösung liefert, die dann eine konvexe Menge darstellt.

Die Relevanz der Gleichung [9] für Verkehrsumlegungen liegt darin begründet, dass sich im Fall von additiven Wegekosten, die (notwendigen) Bedingungen erster Ordnung mit folgender Formulierung des deterministischen Nutzergleichgewichts auf der Basis des Wardrop-Prinzips für jedes oZ und dZ decken:

Fk(Ck - Wod) = 0, ∀kKod [10.1]

CkWod, ∀kKod [10.2]

Fk ≥ 0, ∀kKod [10.3]

kKodFk = Dod [10.4]

Auf der Basis von [10.1] bis [10.4]

  • haben alle genutzten Wege (Fk > 0) die minimalen Kosten (Ck = Wod);
  • hat jeder nicht genutzte Weg (Fk = 0) keine niedrigeren Kosten (CkWod).

Ein Nutzergleichgewicht liegt vor, wenn die Bedingungen [10.1] bis [10.4] gleichzeitig für jede Quelle-Ziel-Beziehung gelten, wobei angenommen wird, dass jeder Wegkostenwert Ck eine Funktion (potenziell) aller Wegbelastungen F ist, aufgrund der Kantenkostenfunktion:

Ck = ∑ijAδijkcij(∑kKδijkFk), in kompakter Form C = ΔT • c(ΔF) [11]

Da der Gradient von Φ (F)C = ΔTc(Δ•F) ist, erhalten wir für XF durch die Linearisierung der Zielfunktion von Problem [9] an einem Punkt F∈Ω:

Φ(X) = Φ(F) + CT•(X-F) + o(||X-F||). [12]

Aus Gleichung [12] erkennen wir, dass eine Richtung E-F genau dann fallend ist, wenn:

CT•(E-F) < 0. [13]

Um also die Zielfunktion zu senken und die Zulässigkeit zu erhalten, müssen zwangsläufig Wegbelastungen so verschoben werden, dass deren Gesamtkosten hinsichtlich des aktuellen Kostenprofils niedriger werden, d.h. die aktuelle Lösung wird von F zu einem E∈Ω verschoben, sodass CTE < CTF, wobei C = ΔTc(ΔF). Die Notwendigkeit ergibt sich aus der Konvexität des Problems, da in diesem Fall an jedem Punkt X mit CT(X-F) > 0 gilt: Φ(X) > Φ(F).

Diese Herangehensweise zur Ermittlung einer Abstiegsrichtung kann auf jede Quelle-Ziel-Beziehung einzeln, auf jedes Ziel, oder auf das gesamte Netz angewandt werden. Basierend auf der obigen allgemeinen Regel liefert das Setzen der Belastungen E mittels einer Alles-oder-Nichts-Umlegung auf Kurzwege eindeutig eine Abstiegsrichtung. Übernehmen wir solch eine Richtung für alle QZ-Beziehungen gleichzeitig und wenden gleichzeitig eine Liniensuche an, erhalten wir den bekannten Frank-Wolfe-Algorithmus. Im Gleichgewicht verwendet jede QZ-Beziehung jedoch typischerweise mehrere Wege, was bedeutet, dass jede Abstiegsrichtung, die einen einzelnen Weg belastet, eigentlich kurzsichtig ist; tatsächlich konvergieren solche Algorithmen nur langsam.

Sobald eine zulässige Abstiegsrichtung E-F bekannt ist, können wir, da Ω konvex ist, die aktuelle Lösung entlang dem Segment F+α(E-F) bewegen und einen Schritt α∈(0,1] durchführen, damit die Zielfunktion von Problem [9], geschrieben als Φ(α) = Φ(F+α(E-F)), ausreichend gesenkt wird. Da Φ sowohl C1 als auch konvex ist, und somit auch Φ, sind mehrere Methoden verfügbar, um ein α zu bestimmen, das Φ(α) minimiert. Visum verwendet eine Armijo-ähnliche Suche und ermittelt den größten Schritt α = 0.5k für alle nicht-negativen Ganzzahlen k, sodass

∂ Φ(0.5k)/∂α < 0. [14]

Bei dieser Methode muss die gerichtete Ableitung der Zielfunktion berechnet werden:

∂Φ(α)/∂α = [c(Δ•(F+α•(E-F)))]T•[Δ•(E-F)], [15]

was voraussetzt, dass die Kantenkosten an den Kandidatenbelastungen F+α(E-F) ausgewertet werden und dann die Differenz zwischen den zugehörigen Gesamtkosten, die aus den Belastungen E und F ermittelt wurden. Sind solche Gesamtkosten mit E kleiner als solche mit F, dann ist ∂Φ(α)/α negativ, sodass die optimale Lösung mehr in Richtung E geht, und umgekehrt.